﻿using HouseKeeperCore.Elemental;
namespace BillSplitter
{
    /// <summary>
    ///  An event that happens when charging starts, ends or changes
    /// </summary>
    public class ChargeEvent : BillEvent
    {
        #region Properties

        /// <summary>
        ///  Type of the usage that starts to happen upon the event
        /// </summary>
        IUsageType UsageType { get; set; }

        /// <summary>
        ///  The consumer that is going to make the usage
        /// </summary>
        IConsumer Consumer { get; set; }

        /// <summary>
        ///  The provider that allows the consumer to make the usage
        /// </summary>
        IProvider Provider { get; set; }

        #endregion

        #region Constructors

        /// <summary>
        ///  Instantiates a charge event
        /// </summary>
        public ChargeEvent()
            : base(null)
        {
        }

        #endregion
    }
}
